package com.study.a03threadDeno3;

import java.util.concurrent.ExecutionException;
import java.util.concurrent.FutureTask;

public class ThreadDemo {
    public static void main(String[] args) throws ExecutionException, InterruptedException {


        // 可以获取结果
        //多线程的第三种实现方法
        //创建一个类MyCallabke实现Callable接口
        //重写call方法

        //创建MyCallable的对象（表示多线程执行的任务）
        //创建FutureTask的对象（表示多线程执行的结果）
        //创建Thread类的对象，并启动

        MyCallable mc = new MyCallable();
        FutureTask<Integer> ft = new FutureTask<>(mc);

        Thread T1 = new Thread(ft);
        T1.setName("线程1");
        T1.start();

        //获取多线程运行结果

        Integer result =ft.get();
        System.out.println(result);
    }
}
